Don't use g_idle_add to schedule idles in GDK
authorMatthias Clasen <mclasen@redhat.com>
Sat, 11 Sep 2010 02:28:55 +0000 (22:28 -0400)
committerMatthias Clasen <mclasen@redhat.com>
Sat, 11 Sep 2010 02:32:44 +0000 (22:32 -0400)
We need to use gdk_threads_add_idle, in order to keep GDK code
under the GDK lock.

Bug 629277

gdk/gdkwindow.c

index 6e75e065979c5f402ed7c7f0109e869698c4f199..c2fcb5a21fb3d3e0a3597cea404ae446b065fc34 100644 (file)
@@ -9822,10 +9822,10 @@ _gdk_synthesize_crossing_events_for_geometry_change (GdkWindow *changed_window)
     {
       toplevel_priv->synthesize_crossing_event_queued = TRUE;
 
-      g_idle_add_full (GDK_PRIORITY_EVENTS - 1,
-                      do_synthesize_crossing_event,
-                      g_object_ref (toplevel),
-                      g_object_unref);
+      gdk_threads_add_idle_full (GDK_PRIORITY_EVENTS - 1,
+                                 do_synthesize_crossing_event,
+                                 g_object_ref (toplevel),
+                                 g_object_unref);
     }
 }